(0) Obligation:
Runtime Complexity TRS:
The TRS R consists of the following rules:
f(s(a), s(b), x) → f(x, x, x)
g(f(s(x), s(y), z)) → g(f(x, y, z))
cons(x, y) → x
cons(x, y) → y
Rewrite Strategy: INNERMOST
(1) CpxTrsToCdtProof (BOTH BOUNDS(ID, ID) transformation)
Converted CpxTRS to CDT
(2) Obligation:
Complexity Dependency Tuples Problem
Rules:
f(s(a), s(b), z0) → f(z0, z0, z0)
g(f(s(z0), s(z1), z2)) → g(f(z0, z1, z2))
cons(z0, z1) → z0
cons(z0, z1) → z1
Tuples:
F(s(a), s(b), z0) → c(F(z0, z0, z0))
G(f(s(z0), s(z1), z2)) → c1(G(f(z0, z1, z2)), F(z0, z1, z2))
S tuples:
F(s(a), s(b), z0) → c(F(z0, z0, z0))
G(f(s(z0), s(z1), z2)) → c1(G(f(z0, z1, z2)), F(z0, z1, z2))
K tuples:none
Defined Rule Symbols:
f, g, cons
Defined Pair Symbols:
F, G
Compound Symbols:
c, c1
(3) CdtUnreachableProof (EQUIVALENT transformation)
The following tuples could be removed as they are not reachable from basic start terms:
G(f(s(z0), s(z1), z2)) → c1(G(f(z0, z1, z2)), F(z0, z1, z2))
(4) Obligation:
Complexity Dependency Tuples Problem
Rules:
f(s(a), s(b), z0) → f(z0, z0, z0)
g(f(s(z0), s(z1), z2)) → g(f(z0, z1, z2))
cons(z0, z1) → z0
cons(z0, z1) → z1
Tuples:
F(s(a), s(b), z0) → c(F(z0, z0, z0))
S tuples:
F(s(a), s(b), z0) → c(F(z0, z0, z0))
K tuples:none
Defined Rule Symbols:
f, g, cons
Defined Pair Symbols:
F
Compound Symbols:
c
(5) CdtGraphRemoveDanglingProof (ComplexityIfPolyImplication transformation)
Removed 1 of 1 dangling nodes:
F(s(a), s(b), z0) → c(F(z0, z0, z0))
(6) Obligation:
Complexity Dependency Tuples Problem
Rules:
f(s(a), s(b), z0) → f(z0, z0, z0)
g(f(s(z0), s(z1), z2)) → g(f(z0, z1, z2))
cons(z0, z1) → z0
cons(z0, z1) → z1
Tuples:none
S tuples:none
K tuples:none
Defined Rule Symbols:
f, g, cons
Defined Pair Symbols:none
Compound Symbols:none
(7) SIsEmptyProof (EQUIVALENT transformation)
The set S is empty
(8) BOUNDS(O(1), O(1))